//package com.ocl.www.sdk.impl;
//
//import java.io.ByteArrayInputStream;
//import java.io.ByteArrayOutputStream;
//import java.io.IOException;
//import java.io.InputStream;
//import java.util.ArrayList;
//import java.util.List;
//import java.util.zip.GZIPInputStream;
//
//import org.apache.http.Header;
//import org.apache.http.HttpException;
//import org.apache.http.HttpRequest;
//import org.apache.http.HttpRequestInterceptor;
//import org.apache.http.HttpResponse;
//import org.apache.http.HttpStatus;
//import org.apache.http.NameValuePair;
//import org.apache.http.client.entity.UrlEncodedFormEntity;
//import org.apache.http.client.methods.HttpPost;
//import org.apache.http.impl.client.DefaultHttpClient;
//import org.apache.http.message.BasicNameValuePair;
//import org.apache.http.params.CoreConnectionPNames;
//import org.apache.http.protocol.HttpContext;
//
//import com.ocl.www.sdk.SMSService;
//
//import sun.misc.BASE64Encoder;
//
//@SuppressWarnings("restriction")
//public class LuosimaoSMS implements SMSService {
//
//	 /**
//     * 发送短信
//     *
//     * @param mobile
//     * @param message
//     * @return
//     * @throws Exception
//     */
//    private String send(String mobile, String message) throws Exception {
//
//        DefaultHttpClient client = new DefaultHttpClient();
//
//        client.addRequestInterceptor(new HttpRequestInterceptor() {
//			@Override
//            public void process(HttpRequest request, HttpContext context) throws HttpException, IOException {
//                request.addHeader("Accept-Encoding", "gzip");
//                request.addHeader("Authorization", "Basic " + new BASE64Encoder().encode("api:d3562480c347bf29f75716cd4d6ab47c".getBytes("utf-8")));
//            }
//        });
//
//        client.getParams().setIntParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 30000);
//        client.getParams().setIntParameter(CoreConnectionPNames.SO_TIMEOUT, 30000);
//
//        HttpPost request = new HttpPost("https://sms-api.luosimao.com/v1/send.json");
//
//        ByteArrayOutputStream bos = null;
//        InputStream bis = null;
//        byte[] buf = new byte[10240];
//
//        String content = null;
//        try {
//            List<NameValuePair> params = new ArrayList<NameValuePair>();
//            params.add(new BasicNameValuePair("mobile", mobile));
//            params.add(new BasicNameValuePair("message", message));
//            request.setEntity(new UrlEncodedFormEntity(params, "utf-8"));
//
//
//            HttpResponse response = client.execute(request);
//
//            if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
//                bis = response.getEntity().getContent();
//                Header[] gzip = response.getHeaders("Content-Encoding");
//
//                bos = new ByteArrayOutputStream();
//                int count;
//                while ((count = bis.read(buf)) != -1) {
//                    bos.write(buf, 0, count);
//                }
//                bis.close();
//
//                if (gzip.length > 0 && gzip[0].getValue().equalsIgnoreCase("gzip")) {
//                    GZIPInputStream gzin = new GZIPInputStream(new ByteArrayInputStream(bos.toByteArray()));
//                    StringBuffer sb = new StringBuffer();
//                    int size;
//                    while ((size = gzin.read(buf)) != -1) {
//                        sb.append(new String(buf, 0, size, "utf-8"));
//                    }
//                    gzin.close();
//                    bos.close();
//
//                    content = sb.toString();
//                } else {
//                    content = bos.toString();
//                }
//
//                System.out.println(content);
//            } else {
//                System.out.println("error code is " + response.getStatusLine().getStatusCode());
//            }
//            return content;
//
//        } finally {
//            if (bis != null) {
//                try {
//                    bis.close();// 最后要关闭BufferedReader
//                } catch (Exception e) {
//                }
//            }
//        }
//    }
//
//	@Override
//	public void sendSMS(String phone, String content) {
//		try {
//            send(phone, content);
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//	}
//
//	@Override
//	public void sendSMS(String phone, String content, String time) {
//		sendSMS(phone, content);
//	}
//}
